Authorization Definitions

SoftwareShield System Feature Guide > Authorization Definitions

## Authorization Definitions

Authorization Definitions are unique data structures you define inside a license project using the SoftwareShield License Manager Application. Authorization Definitions, when "activated", define the behaviour of the license as well as persisting licensing data relative to each definition and activation between sessions.

Authorization Definitions are the mechanism that you provide inside your license to allow the ClientProtector component to generate a request for action. That request is an Authorization Request Code.

Authorization Definitions are interrogated (and their data and the license data is potentially changed) by the ClientProtector when it receives a "call to action" relating to that definition. That "call to action" is (most often in the form of) an Activation Code.

An Authorization Definition contains:

1. A unique identifier (Auth. ID) from 0 to 63.

2. Authorization Definition Type, which will ultimately define its behavior when activated.

3. Authorization Definition Activation. A boolean flag indicating if the Authorization Definition is currently activated. Definitions can be activated in (up to) three different ways depending on their type. (1) Pre-activated (at design time). (2) At run-time programmatically. (3) At run-time with an Activation Code the user inputs (most common).

4. Authorization Definition Description A brief description of what your intended purpose is for the definition.

5. Authorization Definition Parameter Value A definition may require (or optionally allow) a parameter value to be stored in association with that definition. This parameter can sometimes be pre-set at design time or sent and stored with an Activation Code when it is eventually activated (depending on its type).

6. Authorization Definition Parameter Description. If a parameter is sent with a General Use Definition, then it requires a description.

7. Authorization Definition Password A password which is unique to that definition, used as a key for an additional layer of encryption on both Authorization Request Codes and Activation Codes.

8. Authorization Definition Shelf-Life Optionally, definitions can use a "Shelf-Life" which determines how long the user has to use Activation Codes generated for this definition before they expire and cease to work.

9. Authorization Definition Single Use Optionally, definitions can use a "Single-Use" boolean flag which prevents unique Activation Codes that are generated for this definition from being used more than once on a given license.

10. Authorization Definition Pre-Condition For some types, allows for pre-condition, which ensures that the host definition can not be activated until some other Authorization Definition has previously been activated.

11. Authorization Definition Composite Payload For composite types, includes a set of other Authorization Definitions to activate (possibly along with parameters) enabling complex licensing logic using a single Activation Code.

12. Authorization Definition Serial Number Most types allow the storage of a Serial Number. Normally you do not set this Serial Number at design time, the ClientProtector will set it when a successful Serial Number Code Exchange occurs.

Reading How To Create Authorization Definitions will help you in understanding in general terms what Authorization Definitions are, how to create and use them.

See the Authorization Definitions Tab section in the SoftwareShield License Manager reference to see specifically how to create Authorization Definitions using the SoftwareShield License Manager.